1951B - Battle Cows - CodeForces Solution


binary search data structures greedy

Please click on ads to support us..

Python Code:

def calculate(n,k,A):
    track = -1
    cow_rating = A[k-1]
    res = res2 = 0
 
    for i in range(k-1):
        if A[i]>cow_rating:
            track = i
            break
        
    temp = A[0]
    A[0] = A[k-1]
    A[k-1] = temp
 
    for i in range(1,n):
        if A[i]<cow_rating:
            res+=1
        elif A[i]>cow_rating:
            break
 
    temp = A[0]
    A[0] = A[k-1]
    A[k-1] = temp
    
    if track!=-1 and track!=0:
        temp = A[k-1]
        A[k-1] = A[track]
        A[track] = A[k-1]
 
        res2 += 1
        for i in range(track+1, n):
            if A[i]<cow_rating:
                res2+=1
            elif A[i]>cow_rating:
                break
 
    return max(res, res2)
 
for i in range(int(input())):
    n,k = list(map(int, input().split()))
    A = list(map(int, input().split()))
    print(calculate(n,k,A))


Comments

Submit
0 Comments
More Questions

1333A - Little Artem
432D - Prefixes and Suffixes
486A - Calculating Function
1373B - 01 Game
1187A - Stickers and Toys
313B - Ilya and Queries
579A - Raising Bacteria
723A - The New Year Meeting Friends
302A - Eugeny and Array
1638B - Odd Swap Sort
1370C - Number Game
1206B - Make Product Equal One
131A - cAPS lOCK
1635A - Min Or Sum
474A - Keyboard
1343A - Candies
1343C - Alternating Subsequence
1325A - EhAb AnD gCd
746A - Compote
318A - Even Odds
550B - Preparing Olympiad
939B - Hamster Farm
732A - Buy a Shovel
1220C - Substring Game in the Lesson
452A - Eevee
1647B - Madoka and the Elegant Gift
1408A - Circle Coloring
766B - Mahmoud and a Triangle
1618C - Paint the Array
469A - I Wanna Be the Guy